package com.justgame.project.service.system.mapper;

import com.justgame.project.service.api.dto.SysStationOrderDTO;
import org.apache.ibatis.annotations.MapKey;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

@Mapper
public interface SysStationOrderMapper {

    /**
     * 生成订单
     *
     * @param dto
     * @return
     */
    Boolean buildOrder(@Param("dto") SysStationOrderDTO dto);

    /**
     * 查询某用户是否已购买某游戏并未过期
     *
     * @param userId
     * @param gameId
     * @return
     */
    Boolean hasBought(@Param("userId") String userId, @Param("gameId") String gameId);

    /**
     * 获取所有已购买的游戏
     *
     * @param userId
     * @return
     */
    @MapKey("orderCode")
    List<Map<String, Object>> getPurchaseList(@Param("userId") String userId);

}
